home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Standards 1994 January / InfoMagic Standards - January 1994.iso / misc / merit / 1992 / 92_404.txt < prev    next >
Text File  |  1992-10-22  |  16KB  |  383 lines

  1.  
  2.                                                    X3S3.3/92-404
  3.  
  4.  
  5.  
  6. Identified Inconsistencies and Proposed changes to ISO/IEC DIS 10747
  7. ====================================================================
  8.  
  9. Source: ATN Project (via L. Boan, MITRE)
  10.  
  11. 1. Asymetric release of resources
  12.  
  13. It seems that the specified procedures to be performed upon closing a
  14. BIS-BIS connection (7.6.2) will result in a different handling of allocated
  15. resources associated with this connection within the local and the remote
  16. BIS.
  17.  
  18. The following table summarizes the relevant events and the resulting
  19. reactions according to ISO/IEC 10747.
  20.  
  21. Event                   Reaction by local BIS   Reaction by Remote BIS
  22. ----                    ---------------------   ----------------------
  23.  
  24. Stop Event              Deallocate all resources
  25.                         Maintain Sequence Number
  26.                         Send CEASE PDU
  27.  
  28. Receipt of
  29. Incorrect PDU           Send IDRP ERROR PDU     Deallocate all resources
  30.                                                 Maintain sequence number
  31.                                                 Send CEASE PDU
  32.  
  33. Receipt of IDRP         Deallocate all resources
  34. ERROR PDU               Maintain sequence number
  35.                         Send CEASE PDU          Maintain sequence number
  36.  
  37. Maintaining the sequence number requires that other information (resources)
  38. associated with the BIS-BIS connection has to be maintained, too. This will
  39. result on the one hand in a strongly asymetric release of resources and on
  40. the other hand in an inconsistent establishment of a new connection: This is
  41. due to the fact that after reinitiation of a connection, flow control is
  42. expecting PDUs arriving with sequence numbers following the last number
  43. used in the previous closed connection (7.5.2). In order to have a match
  44. on the sending and receiving sides both BISs require identical starting
  45. conditions. However, the BIS which has released all resources, will
  46. start with sequence number of "1", whereas the peer BIS is still holding
  47. the last used sequence number for incoming BISPDUs.
  48.  
  49. Proposed solution
  50. -----------------
  51.  
  52. It is proposed that a BIS entering the CLOSED state shall release all
  53. resources associated with the previous connection. This will cater for
  54. identical starting conditions, amongst others with respect to the
  55. sequence number.
  56.  
  57. Add to clause 7.6.1.1 last line:
  58. A BIS entering the closed state shall release all connection records
  59. associated with the previous connection.
  60.  
  61. Alternate solution
  62. ------------------
  63. Remove all references to allocation/deallocation of resources.
  64.  
  65. 2. Establishment of a BIS-BIS connection
  66.  
  67. If no BIS-BIS connection exists between a BIS pair, both BISs are in
  68. the CLOSED state. Upon receipt of a start event, the local BIS shall enter
  69. the OPEN-SENT state and send an OPEN PDU to the remote BIS (7.6.1.1). As
  70. the remote BIS is in the CLOSED state, the first column of Table 2 applies
  71. for the status of its FSM. This table indicates that the BIS shall stay
  72. in the CLOSED state upon receipt of the OPEN PDU and take no action. As
  73. there is no other event to leave this state except the start event, the
  74. opening of a connection requires a quasi-simulataneous action by systems
  75. management at the local and remote BIS. It is highly desirable to start the
  76. IDRP FSM in an autonomous way without requiring systems management actions
  77. at both ends of the connection.
  78.  
  79. Note: Also, if the 2 BIS peer's timers are not correctly set up, each
  80. side may send an OPEN PDU, and time out before receiving an OPEN PDU
  81. from its peer. With a BIS's timers slightly out of adjustment, it may
  82. take multiple OPEN PDU exchanges to open a connection. Worse case, a
  83. BIS-BIS connection may never be established due to time-outs. If
  84. a system management function must be required to establish the connection
  85. on both sides, this function must also be coordinated to keep within the
  86. set time periods.
  87.  
  88. Proposed solution
  89. -----------------
  90.  
  91. Modify the IDRP FSM in order to allow a BIS being in the CLOSED state to
  92. leave this state and to enter the OPEN-RCVD state upon receipt of an OPEN
  93. PDU without errors.
  94.  
  95. Change clause 7.6.1.1. C) to
  96. If the BIS receives any BISPDU other than an OPEN PDU, with or without
  97. header error, the BIS shall ignore it and the FSM shall remain in the
  98. CLOSED state.
  99.  
  100. d) If the local BIS receives an OPEN BISPDU, the BIS shall
  101. generate an initial sequence number (see 7.5.2), and shall
  102. send an OPEN BISPDU to the remote BIS. The sequence field
  103. of the OPEN PDU shall contain the Initial Sequence Number (ISN),
  104. with an acknowledgment of the remote BIS's OPEN PDU. The FSM
  105. shall then enter the OPEN-RCVD state.
  106.  
  107.  
  108. 3. CloseWaitDelay
  109.  
  110. The CloseWaitDelay is defined as the constant time period of 150 seconds
  111. that the IDRP FSM waits after having entered the Close-Wait state before
  112. entering the CLOSED state for a given BIS-BIS connection (10.). Upon
  113. entering the Close-Wait state all entries in the Adj-RIB-In associated
  114. with the peer BIS are marked as unreachable (7.6.1.5). As no new BIS-BIS
  115. connections can be set up to the remote BIS before the FSM has entered
  116. the CLOSED state, no communicate is possible with this BIS for at least
  117. 150 seconds. The following table identifies the events that can cause
  118. the IDRP FSM to close a BIS-BIS connection,ie to enter the CLOSE-WAIT
  119. state, and whether the new connection may be required immediately.
  120.  
  121. Event                           Start new connection?
  122.  
  123. Generation of Stop Event        No, must wait for CloseWaitDelay timeout of
  124. by systems management           150 seconds
  125.  
  126. Expiration of HoldTimer         Yes, may wish to start a new connection
  127.                                 immediately to continue communications
  128.  
  129. Receipt of incorrect            Yes, as the corruption of a PDU should not
  130. BISPDU                          cause a complete stop of communications
  131.  
  132. Receipt of IDRP ERROR           Yes/No (may depend on error)
  133. PDU
  134.  
  135. Recept of CEASE PDU             Unknown
  136.  
  137. The above table indicates that BIS-BIS connections may be closed which
  138. require immediate establishment of a new one.
  139.  
  140. Proposed solution
  141. -----------------
  142.  
  143. Define the CLoseWaitDelay as variable. The rationale for fixing the
  144. CloseWaitDelay to a value of 150 was, to guarantee that all outstanding
  145. BISPDUs associated with the previous connection will have expired
  146. before a new connection is opened, assuming a maximum lifetime of
  147. 128 seconds for ISO 8473 NPDUs. As the maximum lifetime of ISO 8473
  148. PDUs may be much smaller depending on the inter-domain subnetwork
  149. characteristics, it seems appropropriate to allow the CloseWaitDelay
  150. time to be variable. A default value of 150 seconds could be recommended,
  151. however.
  152.  
  153. 4. Inconsistent Flow Control mechanism for KEEPALIVE PDUs
  154.  
  155. Section 7.5.3 c) of DIS 10747 states that an incoming KEEPALIVE PDU
  156. whose sequence value does not correspond to the expect one shall be
  157. discarded.  As the sequence number value for a KEEPALIVE PDU is not
  158. incremented at the sending side (7.5.3 b), but the sequence number
  159. of the next expected PDU is increased at the receiving side after
  160. receipt of an UPDATE, RIB REFRESH, and OPEN PDU, a KEEPALIVE PDU
  161. following one of these PDUs will always be discarded. As a
  162. consequence, the HoldTimer may expire and the connection will close.
  163.  
  164. Proposed solution
  165. -----------------
  166.  
  167. Remove the KEEPALIVE PDU from the third paragraph of section 7.5.3 c)
  168. in DIS 10747. Add the KEEPALIVE PDU to the forth paragraph of
  169. section 7.5.3 c.)
  170.  
  171. 5. Maintaining of Sequence Numbers after Closing a Connection
  172.  
  173. As described in 7.5.3 a) of ISO 10747, the initial value of the
  174. sequence number for outgoing BISPDUs will be chosen by the sender
  175. of an OPEN PDU in the process of establishing a connection. The
  176. initial value of the next expected sequence number for incoming
  177. PDUs will be derived from the OPEN PDU. This procedure seems to
  178. establish a completely new context for sequence numbers in the
  179. establishment phase of a BIS-BIS connection. The only rationale
  180. to keep the sequence number of the previously closed connection
  181. between the same BIS pair (7.5.2) and to use this sequence number
  182. as the initial one, is seen in the fact to exercise flow control
  183. for the exchange of OPEN PDUs.
  184.  
  185. 1.As it is not completely clear in which cases the sequence number
  186. of the previously closed connection should be kept and re-used
  187. (7.5.2 discriminates between abnormal termination of a connection
  188. and conditions listed in Table 2 also contain abnormal termination
  189. conditions.)
  190.  
  191. 2. And the specified procedure seems to be in conflict with the
  192. procedure defined for deallocating resources in the process of
  193. closing a connection
  194.  
  195. it is proposed that an initial sequence number '1' be allowed
  196. for use when a connection is re-opened.
  197.  
  198. Note also that the use of the CloseWaitDelay timer should guarantee
  199. that all outstanding BISPDUs are received by a BIS, before the BIS
  200. attempts to re-establish a connection. If a connection is re-established
  201. with sequence number one (or any other number), there should be no
  202. outstanding BISPDUs received using the sequence number corresponding
  203. to the previous connection.
  204.  
  205. Text 7.5.2.c) should be modified to read:
  206.  
  207. "If the connection is subsequently closed under the conditions provided in
  208. table 2, the sequence number should be set back to one. ..."
  209.  
  210.  
  211. 6. Closing a connection
  212.  
  213. The closing of an IDRP connection can be initiated by an expiration
  214. of the HoldTimer. This should be listed in paragraph 7.6.2 in DIS
  215. 10747.
  216.  
  217.  
  218. 7. UPDATE PDU
  219.  
  220. It is expected that the IDRP protocol may be implemented to run
  221. over very low bandwidth networks. The current ISO 10747 requires
  222. the a single UPDATE PDU be sent for each RIB-Att combination supported.
  223. For example, if 3 RIB-Atts were supported over a given route, 3
  224. separate UDDATE PDUs would need to be exchanged between a BIS-BIS
  225. pair. Although this mechanism of one UPDATE PDU
  226. per RIB-att allows simplicity in mapping between the UPDATE PDU
  227. and the IDRP databases, for low bandwidth networks, this exchange
  228. may require a significant amount of time for a single BIS-BIS
  229. pair to stabilize their routes. Furthermore, if information is
  230. exchanged between BISs within a large topology, these separate
  231. UPDATE PDUs would require a long time period for the topology to
  232. stabilize in term of correct, up-to-date routing information.
  233. As the RIB-atts are provided in the initial OPEN PDU exchange, low bandwidth
  234. networks may find it in their own best interest to send multiple
  235. RIB-atts per UPDATE (given all other parameters are equal), and to
  236. implement the more complex mapping of the UPDATE PDU to the IDRP
  237. databases.
  238.  
  239. It is suggested that within the UPDATE PDU, a RIB-ID field be included
  240. to distinguish the RIB-att(s) that the UPDATE attributes correspond to.
  241. The RIB-ID value could be based on the ordering of the Rib-atts as
  242. provided in the UPDATE PDU.
  243.  
  244. Proposal
  245. --------
  246. Add to components in first figure clause 6.3
  247. RIB-ID Count (1 octet)
  248. RIB-ID (variable)
  249.  
  250. RIB-ID Count: This is a single octet field whose value is equal
  251. to the number of RIB-IDs which included in the subsequent RIB-ID
  252. field. A value of zero indicates that the default RIB-att is being
  253. advertised.
  254.  
  255. RIB-ID: This is a variable length field that contains a list of
  256. RIB-att identifiers for the attributes that are described in this
  257. UPDATE PDU.
  258.  
  259. 8. Mapping of QOS Maintenance option in Forwarding process
  260.  
  261. Currently, ISO 10747 and ISO 10589 provide different algorithms between
  262. mapping an NPDU with the QOS Maintenance option to the appropriate
  263. FIB. According to ISO 10589, clause 7.4.2 c)
  264.  
  265.         IF the QOS maintenance option is present...
  266.         c) The IS shall select a forwarding database by mapping the
  267.         values of bits 3, 2 and 1 of the paramter value as shown in
  268.         table 1 and shall proceed as follows:
  269.  
  270.                 1) If the IS does not support the selected routing metric,
  271.                 the IS shall forward based on the default metric.
  272.  
  273.                 2) If the forwarding database for one of the optional
  274.                 routing metrics is selected and the database either
  275.                 does not contain an entry for the Destination Address in
  276.                 the NPDU being relayed, or contains an entry indicating
  277.                 the destination is unreachable using that metric, then
  278.                 the IS shall attempt to forward based on the default metric.
  279.  
  280.                 3) Otherwise, forward based on the selected optional metric.
  281.  
  282. Note also that metrics (Expense,Delay,and Error) are supported (No mapping
  283. to Capacity.)
  284.  
  285. Meanwhile, IDRP maps the attributes in the QOS maintenance option using a
  286. "strong" form of QOS:
  287.  
  288. If there is no exact match between the NPDU options and the defined metrics,
  289. the local BIS shall perform the ISO 8373 "Discard PDU Function".. and shall
  290. generate an ER PDU with the parameter value set to "Unsupported Option not
  291. Specified".
  292.  
  293.  
  294. Given that ISO 8473 also states that "In those instances where a QOS
  295. requested cannot be maintained, intermediate system network-entities
  296. shall attempt to deliver the PDU at a QOS different from the QOS
  297. requested", it is recommended that the IDRP forwarding process also allow
  298. this mapping to a default database.
  299.  
  300. Proposal
  301. ---------
  302. Change clause 8 b) i) to read:
  303.  
  304. i) If there is no match, then the BIS shall attempt to forward the NPDU
  305. based on the default RIB-att.
  306.  
  307.  
  308. 9. Globally Unique Security
  309. Although ISO 8473 provides the Globally Unique Security Option,
  310. this option is unsupported in IDRP. If IDRP receives an NDPU with
  311. Globally Unique Security, the NPDU will be discarded. Given that there
  312. are networks under design which are depending on use of this attribute
  313. in an inter-domain environment, it would be advantageous for
  314. this attribute to be supported.
  315.  
  316. Proposed Solution
  317. ------------------
  318.  
  319. Provide Globally Unique Security attribute in ISO 10747.
  320.  
  321. Add clauses
  322.  
  323. 6.3 r) GLOBALLY UNIQUE SECURITY
  324. This is a well-known discretionary attribute whose variable length
  325. field contains the parameters associated with ISO 8473's globally
  326. unique security parameter, and is encoded as follows:
  327.  
  328. The use and meaning of the fields is as follows:
  329.  
  330. 1) Length:
  331. Given the length in octets of the security label field.
  332.  
  333. 2) Security Label:
  334. Contains the value of the security label.
  335.  
  336. If an NPDU contains the globally unique security parameter, the
  337. NPDU will be routed according to the security label. Its usage is
  338. defined in clause 7.12.18.
  339.  
  340. 7.12.18 GLOBALLY  UNIQUE Security
  341.  
  342. GLOBALLY UNIQUE SECURITY is a well-known discretionary attribute that
  343. allows a BIS to specify the security level that is associated with
  344. a given path, an to limit usage of that path to systems having the
  345. NSAP address prefix listed in this attribute.  The finest granularity
  346. of this control is a single end-system. A BIS shall include this
  347. attribute in its UPDATE PDU to indicate that it supports the
  348. globally unique security level and that it maintains Adj-RIBs and a
  349. Local-RIB distinguished by the indicated globally unique security
  350. level.
  351.  
  352.  
  353. 10. Use of HoldTimer
  354. In DIS 10747, the Holdtimer is used for 3 different purposes:
  355.  
  356. 1. When opening a BIS-BIS connection, the holdtimer is used to
  357. set the amount of time that will be allowed to set up a connection.
  358. After sending an OPEN-PDU to a peer BIS, and receiving an
  359. OPEN-PDU from the peer with the incorrect acknowlegement, the
  360. BIS will enter the OPEN-RCVD state. If the hold time expires,
  361. the connection will be closed. (7.6.1.3 c)
  362.  
  363. 2. After a connection is established, the hold time indicates
  364. the amount of time that a BIS may remain in the ESTABLISHED state
  365. without receipt of a KEEPALIVE, UPDATE or RIB FRESH PDU from the
  366. peer BIS. (7.5.3 j)
  367.  
  368. 3. The transmission of KEEPALIVE PDUs is set to 1/3 the hold time
  369. period. (6.5)
  370.  
  371. Depending on the BIS-BIS environment, however, these time periods may
  372. be vastly different. On one hand, a BIS may demand a
  373. relatively long connection setup period (high hold time period),
  374. but send KEEPALIVE frequently (which would demand a low hold time value.)
  375.  
  376. It is recommended that the hold timer indicate the amount of time that
  377. a BIS may remain in the ESTABLISHED state without receipt of a KEEPALIVE,
  378. UPDATE or RIB REFRESH, and that separate connection initiation and
  379. KEEPALIVE timers be allowed.
  380.  
  381.  
  382.  
  383.